rm(list = ls(all = TRUE)) #clear workspace
setwd("~/REDISTRICTING/DATA")

#----------
# Get data
#----------
# Conteo 2005
data <- read.table("poblacion_distrito_2005.txt", header=TRUE,sep=",")
data <- data[,c("Estado", "Distrito", "Pob_tot")]

# Media Censo 2000 (IFE)
media00 <- 324944.706667 / 100000
desv00  <- media00*.15

# ¿Cuántos distritos en 2005 por arriba/debajo de limite 2000?
nrow(data[data$Pob_tot/100000 > media00+desv00,])
nrow(data[data$Pob_tot/100000 < media00-desv00,])

#----------
# Graficas
#----------
abbrev <- c('Ags','BC','BCS','Cam','Coah', 'Col', 'Chis',
			'Chih','DF','Dgo','Gto','Gro','Hgo','Jal',
			'Méx','Mich','Mor','Nay','NL','Oax','Pue',
			'Qro','QR','SLP','Sin','Son','Tab','Tamps',
			'Tlax','Ver','Yuc','Zac')
data$Name <- factor(data$Estado, labels=abbrev)
data <- data[order(data$Estado, -data$Pob_tot),]

# Desviacion con respecto a media 2000
setwd("~/REDISTRICTING/OUTPUT")
png("pob2005_vs_dto2006.png", width=400, height= 4000, units="px")
par(bty='n') 
dotchart(data$Pob_tot/100000,
         labels=data$Distrito,
         groups=data$Name,
         gcolor="dimgray",
         pch=16,
         main="Población Total (Conteo 2005) \npor distrito electoral 2006",
         xlab="Población Total/100 mil (Conteo 2005)")
#axis(3)
usr <- par("usr")
rect(media00-desv00,usr[3],media00+desv00,usr[4],
     col=rgb(178, 34, 34, alpha=50, maxColorValue=255),
     border=NA)
abline(v=media00, lty="dashed")
legend("topright", 
       legend=c("Media, Censo 2000", "Rango de tolerancia"),
       lty=c("dashed",NA),
       pch=c(NA,15),
       col=c("black", rgb(178, 34, 34, alpha=100, maxColorValue=255)),
       cex=0.8)
dev.off()
